package pe.edu.upc.matrix.negocio;

import java.util.Collection;
import java.util.Date;

import pe.edu.upc.matrix.modelo.BCategoria;
import pe.edu.upc.matrix.modelo.BPersona;
import pe.edu.upc.matrix.dao.DCategoria;
import pe.edu.upc.matrix.dao.DPersona;
import pe.edu.upc.matrix.excepcion.DAOExcepcion;

public class NPersona {
	
	public Collection<BCategoria> buscarPorNombre(String nombre)
			throws DAOExcepcion {
		DCategoria dao = new DCategoria();
		return dao.listar();
	}

	public BPersona insertar(int idTipoPersona, String noPersona, String noPaterno, String noMaterno, int idSexo, int idTipoDocumento, String nuDocumento, String noCorreo, String nuCelular, Date feNacimiento)
			throws DAOExcepcion {
		
		
		DPersona dao = new DPersona();
		BPersona persona = new BPersona();
		persona.setIdTipoPersona(idTipoPersona);
		persona.setNoPersona(noPersona);
		persona.setNoPaterno(noPaterno);
		persona.setNoMaterno(noMaterno);
		persona.setIdSexo(idSexo);
		persona.setIdTipoDocumento(idTipoDocumento);
		persona.setNuDocumento(nuDocumento);
		persona.setNoCorreo(noCorreo);
		persona.setNuCelular(nuCelular);
		persona.setFeNacimiento(feNacimiento);

		return dao.insertar(persona);
	}

	public BCategoria obtener(int idCategoria) throws DAOExcepcion {
		DCategoria dao = new DCategoria();
		return dao.obtener(idCategoria);
	}

	public void eliminar(int idCategoria) throws DAOExcepcion {
		DCategoria dao = new DCategoria();
		dao.eliminar(idCategoria);
	}

	public BCategoria actualizar(int idCategoria, String nombre,
			String descripcion) throws DAOExcepcion {
		DCategoria dao = new DCategoria();

		BCategoria categoria = new BCategoria();
		categoria.setIdCategoria(idCategoria);
		categoria.setNoCategoria(nombre);
		categoria.setDeCategoria(descripcion);

		return dao.actualizar(categoria);
	}

	public Collection<BCategoria> listar() throws DAOExcepcion {
		DCategoria dao = new DCategoria();
		return dao.listar();
	}

}
